using the Alt-F2 dialog.
</_description>
</key>
- <key name="disabled-extensions" type="as">
- <default>[]</default>
- <_summary>Uuids of extensions to disable</_summary>
- <_description>
- GNOME Shell extensions have a uuid property; this key lists extensions
- which should not be loaded. This setting overrides enabled-extensions
- for extensions that appear in both lists.
- </_description>
- </key>
<key name="enabled-extensions" type="as">
<default>[]</default>
<_summary>Uuids of extensions to enable</_summary>
// Maps uuid -> importer object (extension directory tree)
const extensions = {};
// Arrays of uuids
-var disabledExtensions;
var enabledExtensions;
// GFile for user extensions
var userExtensionsDir = null;
// UUID => Array of error messages
var errors = {};
+const ENABLED_EXTENSIONS_KEY = 'enabled-extensions';
+
/**
* versionCheck:
* @required: an array of versions we're compatible with
global.logError('' + e);
}
- disabledExtensions = global.settings.get_strv('disabled-extensions', -1);
- enabledExtensions = global.settings.get_strv('enabled-extensions', -1);
+ enabledExtensions = global.settings.get_strv(ENABLED_EXTENSIONS_KEY);
}
function _loadExtensionsIn(dir, type) {
if (fileType != Gio.FileType.DIRECTORY)
continue;
let name = info.get_name();
- // Enable all but disabled extensions if enabledExtensions is not set.
- // If it is set, enable one those, except they are disabled as well.
- let enabled = (enabledExtensions.length == 0 || enabledExtensions.indexOf(name) >= 0)
- && disabledExtensions.indexOf(name) < 0;
let child = dir.get_child(name);
+ let enabled = enabledExtensions.indexOf(name) != -1;
loadExtension(child, enabled, type);
}
fileEnum.close(null);